package com.cqie.service;

import com.cqie.dto.MessageDto;
import com.cqie.dto.MessageListDto;
import com.cqie.entity.ChatMessage;
import com.baomidou.mybatisplus.extension.service.IService;
import com.cqie.exception.SpecialException;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestParam;

import java.util.List;

/**
 * <p>
 *  服务类
 * </p>
 *
 * @author 不吃海鲜
 * @since 2024-12-24
 */
public interface IChatMessageService extends IService<ChatMessage> {

    /**
     * 发送消息
     * @param messageDto
     * @return
     */
    Boolean sendMessage(MessageDto messageDto) throws SpecialException;

    /**
     * 根据会话ID获取消息
     * @param sessionId
     * @return
     */
    List<MessageListDto> getMessagesBySessionId(Integer sessionId);

    /**
     * 获取会话消息列表
     * @return
     */
    List<MessageListDto> getSessionList(String likeQuery);

    /**
     * 创建会议
     * @param messageListDto
     * @return
     */
    Integer createSession(MessageListDto messageListDto) throws SpecialException;

    /**
     * 根据会话ID获取消息
     * @param sessionId
     * @return
     */
    List<MessageListDto> getBySessionId( Integer sessionId) throws SpecialException;

}
